package com.newgrand.domain.model;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;

/**
 * @创建人：ZhaoFengjie
 * @修改人：ZhaoFengjie
 * @创建时间：23:23 2022/10/17
 * @修改时间:：23:23 2022/10/17
 */
@Data
@ApiModel(value = "SubcontractProcedures", description = "分包合同列表数据模型")
public class SubcontractProcedures {

    @ApiModelProperty(value = "分包合同清单")
    private SubcontractProceduresDataList data;

    @Data
    @ApiModel(value = "SubcontractProceduresDataList", description = "分包合同列表数据模型")
    public class SubcontractProceduresDataList {

        @ApiModelProperty(value = "分包合同清单列表")
        private List<SubcontractProceduresData> subcontractProcedures;

        @Data
        @ApiModel(value = "SubcontractProceduresData", description = "分包合同列表数据模型")
        public class SubcontractProceduresData {
            @ApiModelProperty(value = "合同工序id")
            private Long id;
            @ApiModelProperty(value = "计量单位")
            private String unit;
            @ApiModelProperty(value = "合同id")
            private Long subcontractId;
            @ApiModelProperty(value = "单位工程Id")
            private Long projectUnitWorkId;
            @ApiModelProperty(value = "单位工程名称")
            private String projectUnitWorkName;
            @ApiModelProperty(value = "分部分项id")
            private Long entryWorkId;
            @ApiModelProperty(value = "分部分项名称")
            private String entryWorkName;
            @ApiModelProperty(value = "分部分项全路径名称")
            private String entryWorkFullName;
            @ApiModelProperty(value = "清单id")
            private Long procedureRefId;
            @ApiModelProperty(value = "清单编码")
            private String fullCode;
            @ApiModelProperty(value = "清单名称")
            private String procedureName;
            @ApiModelProperty(value = "暂定合同数量")
            private Double originalQuantity;
            @ApiModelProperty(value = "不含税单价")
            private Double nonTaxPrice;
            @ApiModelProperty(value = "含税单价")
            private Double taxPrice;
            @ApiModelProperty(value = "税率")
            private Double taxRate;
            @ApiModelProperty(value = "暂定含税总价")
            private Double originalAmount;
            @ApiModelProperty(value = "暂定不含税总价")
            private Double originalNonTaxAmount;
            @ApiModelProperty(value = "税额")
            private Double tax;
            @ApiModelProperty(value = "工作内容")
            private String jobContent;
            @ApiModelProperty(value = "费用组成")
            private String costComposition;
            @ApiModelProperty(value = "计量规则")
            private String measurementRule;
        }
    }
}
